/**
 * Created by 97203 on 2018/06/08.
 */
$(function () {
    var dept_datagrid = $("#dept_datagrid");
    var dept_dialog = $("#dept_dialog");
    var dept_form = $("#dept_form");
    dept_datagrid.datagrid({
        url: '/department/query.do',
        fitColumns: true,
        fit: true,
        pagination: true,    //分页条
        rownumbers: true,     //行号列
        singleSelect: true,
        toolbar: '#tb',
        onClickRow: function (index, row) {
            if (row.state) {
                $("#changeState_btn").linkbutton({
                    text: '停用'
                })
            } else {
                $("#changeState_btn").linkbutton({
                    text: '正常'
                })
            }
        },
        columns: [[
            {field: 'name', title: '部门名称', width: 100},
            {field: 'sn', title: '部门编号', width: 100},
            {
                field: 'state', title: '状态', width: 100, formatter: function (value) {
                return value ? "<font color='green'>正常</font>" : "<font color='red'>停用</font>";
            }
            }
        ]]
    })
    dept_dialog.dialog({
        width: 300,
        height: 280,
        buttons: '#btn',
        closed: true,
        //在窗口关闭的时候触发事件
        onClose: function () {
            //清空表单数据
            dept_form.form('clear');
        }
    })

    var methodObj = {
        add: function () {
            //设置标题
            dept_dialog.dialog('setTitle', '新增部门');
            //打开弹出框
            dept_dialog.dialog('open');
        },
        edit: function () {

            var row = dept_datagrid.datagrid('getSelected');
            if (!row) {
                $.messager.alert('温馨提示', '请选中要编辑的数据！', 'warning');
                return;
            }
            //把数据回显到表单中
            dept_form.form('load', row);
            //设置标题
            dept_dialog.dialog('setTitle', '编辑部门');
            //打开弹出框
            dept_dialog.dialog('open');

        },
        changeState: function () {
            var row = dept_datagrid.datagrid('getSelected');
            if (!row) {
                $.messager.alert('温馨提示', '请选中要操作的数据！', 'warning');
                return;
            }
            $.messager.confirm('确认对话框', '您想要执行操作吗？', function (r) {
                if (r) {
                    $.get('/department/changeState.do', {id: row.id}, function (data) {
                        if (data.success) {
                            $.messager.alert('温馨提示', '操作成功！', 'info', function () {
                                dept_datagrid.datagrid('reload');
                            });
                        } else {
                            $.messager.alert('温馨提示', data.msg, 'warning');
                        }
                    })
                }
            });
        },
        reload: function () {
            dept_datagrid.datagrid('reload');
        },
        save: function () {
            //提交ajax
            dept_form.form('submit', {
                url: '/department/saveOrUpdate.do',
                success: function (data) {
                    data = $.parseJSON(data)
                    if (data.success) {
                        $.messager.alert('温馨提示', '保存成功！', 'info', function () {
                            //关闭弹出框
                            methodObj.cancel();
                            //在dataGrid重新加载数据
                            dept_datagrid.datagrid('reload');
                        });
                    } else {
                        $.messager.alert('温馨提示', data.msg, 'warning');
                    }
                }
            })
        },
        cancel: function () {
            dept_dialog.dialog('close');
        },
        query: function () {
            var keyword = $("[name=keyword]").val();
            dept_datagrid.datagrid('load', {
                keyword: keyword
            })
        }
    }
    $("a[data-cmd]").click(function () {
        //获取按钮上的data-cmd的值
        var methodName = $(this).data("cmd");
        methodObj[methodName]();
    })
})
